home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Texty / crackme / fw-cm3.txt < prev    next >
Encoding:
Text File  |  2000-01-24  |  4.4 KB  |  104 lines

  1.                        FireWorx Crackme #3 Tuturial 
  2.  
  3.                   ░               
  4.           ░       ░      ░                                  ▄▓
  5.     ▄▄     ░░     ▄▄▄▄■  ░░▀   ■▄▄▄         ▄▄             ▐█▓▌  
  6.  ▄▀▀  ▀■      ▀        ░░            ▀    ■▀  ▀▀▄           ██▌
  7. ■        ▄▄▀▀ ▄▄██▀██▄▄       ▄▄▄███▄▄ ▀▄▄       ■  ▄▄▄███▄▄▐██     ▄▄████▄▄
  8.  ▀▄▄  ▄▀▀   ▄███▀   ▀██▓▄   ▄████▀ ▀██▓▄  ▀▄  ▄▄▀ ▄████▀ ▀██▓██   ▄████▀ ▀██▓▄
  9.     ▀▀  ▄  ▐███▌  ░  ▐██▓▌ ▐████▌ ░ ▐██▓▌ ▄ ▀▀   ▐████▌ ░ ▐████▌ ▐████▌   ▐██▓▌
  10.  ■██▄▄▓▌   ████  ░▒░  ████ █████▄▄▄  ▀▀▀▀ ▐█▄▄█▓ █████  ░  █████ █████▄▄▀▀▀▀▀▀▀
  11.   ▐████ ░░ ▓██▌ ░▒▓▒░ ▐███ ▄▄▄▄▄  ▀▀▀████▄ ████▌ ▓███▌     ▐████ ▓███▌   ░░░░░░
  12. ░  ███▌ ░ ▐▓███ ░▒▓▒░ ▓███▌▓███▌ ░░░ ▐████ ▐▓██  ▓███▌ ▄▀▀ ▐████ ▓███▌ ░░░░░░░
  13.    ▓██▌   ▐▓███  ░▒░  ▓███▌▐▓███  ░  ▓███▌ ▐▓██  ▐▓███     ▓███▌ ▐▓███    
  14.   ▐▓███   ▐▓▓██▌  ░  ▐▓███▌ ▓▓██▌   ▐▓███  ▓███▌  ▓▓██▌ ░ ▐▓███   ▓▓██▌   
  15.   ▓▓▓██▌ ■▓▓▓▓██  ░  ▓█████■ ▀▓▓█▄ ▄▓██▀  ▐▓████ ▄ ▀▓██▄ ▄▓██▀     ▀▓██▄  
  16.    ▀▓███▄   ▀▀▀██▄  ▄▓█▀▀▀      ▀▀█▀▀    ▄▓▓▓▀▀       ▀▀█▀▀           ▀▀▀▀ js
  17.        ▀▀▀▀▀▄▄           ░ iNSiDE   ▄▄▀▀▀▀▀ 
  18.           ░   ▀▄  ░     ░░        ▄▀
  19.          ░░       ░      ░░ 
  20.  
  21. Tutor      : duelist
  22. Data Wrote : April 6, 1999
  23. Who        : Beginner
  24. Target     : CrackMe #3 by FireWorx
  25. Size       : 329kb (!)
  26. Tools Used : SoftIce, Hiew (optional!)
  27. Method     : Code sniffing
  28.  
  29.  
  30.                 -=* Welcome *=-
  31.  
  32. Well hi there. Although i've been cracking 'crackmes' for long time, i'd
  33. never written a tuturial for one of those, and this will be my first one
  34. due to a request from Eternal Bliss :)
  35.  
  36.  
  37.                -=* Protection *=-
  38.  
  39. Well this crackme is a VERY simple one, and requires only a password, which
  40. normally (if not always) means that it is hardcoded in the program! (see the
  41. first aproach for an example of a method that can be used to defeat this kind
  42. of protections...)
  43.  
  44.  
  45.                -=* 1st Aproach *=-
  46.  
  47. Since we know already that the password should be hardcoded we can try the
  48. following:
  49.  
  50. 1) start hiew and open the crackme exe
  51.  
  52. 2) press F7 (while in text mode!) and search for 'password'
  53.  
  54. 3) after 'some' searches, you will reach this section:
  55.  
  56.    Password EditCaptionEnter your passwordScramble╪÷┼╔╪╫÷╓â⌠╔╓÷╞⌠âPassword
  57.    RIDERSINTHENIGHT NoOfRetriesLeftH      TPF0TPasswordForm PasswordFormLeft
  58.  
  59. 4) Q: so, what do you think that is strange in all that strings?
  60.    A: ahh... uhh... 'Scramble'?
  61.    Q: yes, can be... and what more?
  62.    A: 'RIDERSINTHENIGHT'?
  63.  
  64. 5) So, fire up the crackme, click register and enter 'Scramble'... Ops, it
  65.    didn't work! Now, try 'RIDERSINTHENIGHT'... BINGOOOO!
  66.  
  67. 6) Now that you've done it using this method (sometimes its easier, others is not)
  68.    please continue reading to do it using softice :)
  69.  
  70.  
  71.                -=* 2nd Aproach *=-
  72.  
  73. Now, we'll do it the ol' fashioned way, that is, Softice!
  74.  
  75. 1) Fire up the crackme exe, click register, and enter any password you want!
  76.  
  77. 2) Switch to softice (Control + D) and "bpx hmemcpy" (without the quotes... i use
  78.    hmemcpy because delphi apps don't usually call GetWindowTextA and so)
  79.  
  80. 3) Before continuing, one tip: in this kind of program, when you're in softice try
  81.    first to dump registers before the calls, don't bother entering them (d eax, etc)
  82.  
  83. 4) Click 'Ok' and blamm! You're into softice. Now press F12 exactly 12 times to get
  84.    back to the program code, you will arrive here:
  85.  
  86.    .000454B2: E849E3FDFF                   call     .000023800 ;reads pass we entered 
  87. -> .000454B7: 8B45F8                       mov       eax,[ebp-08] ;our fake pass is here
  88.    .000454BA: 8D55FC                       lea       edx,[ebp-04]
  89.    .000454BD: E84220FCFF                   call     .000007504 ;didn't bother to check
  90.    .000454C2: 8B45FC                       mov       eax,[ebp-04] ;our fake pass, still in eax
  91.    .000454C5: 8B9398000000                 mov       edx,[ebx+98] ;real pass moving into edx!
  92.    .000454CB: E874E6FBFF                   call     .000003B44 ;type "d edx" without quotes to see real pass!
  93.  
  94. 5) If you type "d edx" at 454CB you will get the real pass, 'RIDERSINTHENIGHT', remember
  95.    it from the first aproach?!
  96.  
  97.  
  98.                  -=* Final Notes *=-
  99.  
  100. Well hope you liked my first tuturial on a crackme (actually a very basic one!) and i
  101. soon will release others to be included at Eternal Blisses' page.
  102.  
  103. I tryed to show you, that there are ALWAYS more than 1 way to get past a protection, the
  104. difference is that some are more difficult and more time consumpting.